﻿//*** Guidance generated code ***//
using System;
using System.Collections.Generic;
using System.Diagnostics.Contracts;
using System.Linq;

using ProjectBase.Core;
using ProjectBase.Core.Web;
using $safeprojectname$.Models;

namespace $safeprojectname$
{
    public class TreeViewModel : CoreModel, ITreeViewModel
    {
        #region members
        IList<string> _checkedNodes;
        IList<string> _expandedNodes;
        #endregion members

        #region ITreeViewModel
        public virtual IEnumerable<ITVDataItem> DataSource { get; set; }
        public virtual ITVDataItem CurrentItem { get; set; }

        public virtual string NodeID { get; set; }
        public virtual string TvClientID { get; set; }

        public virtual IList<string> CheckedNodes
        {
            get { return _checkedNodes ?? (_checkedNodes = new List<string>()); }
            set { _checkedNodes = value; }
        }
        public virtual IList<string> ExpandedNodes
        {
            get { return _expandedNodes ?? (_expandedNodes = new List<string>()); }
            set { _expandedNodes = value; }
        }
        #endregion ITreeViewModel
    }
}